<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <script>
        // 函数 相互调用： A函数内部 调用 B函数 ------------------------------------
        // function a(){
        //     console.log('讨厌，人家是 函数a 呢~~');
        // }

        // function b(){
        //     console.log('死鬼，调用的就是你函数a 嗯~~！');
        //     a();
        // }

        // b();

        // ATM函数版：
        //  1.编写 main函数 ： 负责 循环接收 用户的 选项，并根据选项 调用 不同的 函数
        //  2.  编写其他子函数：
        //        2.1 存钱函数      saveMoney
        //        2.2 取钱函数      getMoney
        //        2.3 显示余额函数   showMoney


        // 0. 创建 全局变量，方便 不同函数来 访问
        // 0.1 用户余额变量
        let balance = 0;

        // 主函数：负责 循环接收 用户的 选项，并根据选项 调用 不同的 函数
        function main() {
            //1.循环 接收用户的 选项
            while (true) {
                let usrOpt = +prompt(' 请输入您要进行的操作：\n 1.存钱 \n 2.取钱\n 3.显示余额\n 4.退出');
                if (usrOpt == 1) { // 调用存钱函数
                    saveMoney();
                } else if (usrOpt == 2) { // 调用取钱函数
                    getMoney();
                } else if (usrOpt == 3) { // 调用 显示余额函数
                    alert('您现在余额为：' + balance);
                } else { // 退出循环
                    alert('感谢使用 黑马 ATM机~~，byebye~~~');
                    break;
                }
            }
        }

        // 调用主函数
        main();

        // 存钱函数 --------------------------------------
        function saveMoney() {
            // 接收 用户 要存入的钱
            let tempMoney = +prompt('您现在账户中包含【' + balance + '】元，请输入要存入的金额：');
            // 把 钱 "存入" 全局变量中
            balance += tempMoney;
            // 给与 存钱成功的 用户提示
            alert('存入【' + tempMoney + '】成功，账户余额为【' + balance + '】');
        }

        // 取钱函数 --------------------------------------
        function getMoney() {
            // 接收 用户 要取的钱
            let tempMoney = +prompt('您现在账户中包含【' + balance + '】元，请输入要取出的金额：');
            // 检查 是否 超出余额~~~
            if (tempMoney > balance) {
                alert('对不起，您的余额好像不足哦~~~~');
            } else {
                balance -= tempMoney;
                // 给与 取钱成功的 用户提示
                alert('取出【' + tempMoney + '】成功，账户余额为【' + balance + '】');
            }
        }


    </script>
</head>

<body>

</body>

<!-- author:成都前端_JamesZou 
     from: https://www.jianshu.com/u/00a012fcb7e9
-->

</html>